#pragma once
#ifndef VIRTUAL_H
#define VIRTUAL_H


#include <stdio.h>
#include "StereoX/Stereo.h"
#include "View.h"
#include "highgui.h" 
#include "Matching.h"
#include <iostream>
#include <fstream>
#include "cv.h"



class Virtual
{
public:
	
	CvPoint3D32f cam1;
	CvPoint3D32f cam2;

	 vector<CvPoint> matchPoints1; 
	 vector<CvPoint> matchPoints2; 

	 vector<CvPoint3D32f> points3d; 
	 
	 // vector of 3dpoinst to construct a CVmat
	 int num3dp;
	 double a[100];
	 CvMat* object_points;
	 CvMat* image_points[2];
	 

	 

	Virtual(CvPoint3D32f camposition1,CvPoint3D32f camposition2);

	void Virtual::generatePixelsPosition();
	void Virtual::generatePixelsPositionCV();
	void Virtual::generate3dpoints();
	void Virtual::Reconstruct3DPointsFromVirtualData();
	
};
#endif
